// CMPPClient.h: interface for the CCMPPClient class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_CMPPCLIENT_H__8F7E6516_83C3_4EA1_9FD4_33EED65158DF__INCLUDED_)
#define AFX_CMPPCLIENT_H__8F7E6516_83C3_4EA1_9FD4_33EED65158DF__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CBaseCommand;
class CIF;
class CCMPPClient : public CIF  
{
public:
	CCMPPClient();
	virtual ~CCMPPClient();
public:
	virtual DWORD OnRead(LPCTSTR ReadBuffer, DWORD size, SOCKADDR_IN addr);
	virtual VOID PeriodDispatch();
	virtual VOID OnConnect();
	virtual VOID OnConnectionBroken();
    VOID ProcessCommand(CBaseCommand* pCmd );
    VOID SendCommand(CBaseCommand* pCmd );
	BOOL Send(CSMSItem* pSMS); //send sms to buffer
private:
	DWORD m_TickCount;
	CHAR  m_CmdBuffer[MAX_CMD_LEN];
public:
    LOG4CPLUS_CLASS_DECLARE( _s_logger );

};

#endif // !defined(AFX_CMPPCLIENT_H__8F7E6516_83C3_4EA1_9FD4_33EED65158DF__INCLUDED_)
